ساختارهای کنترلی در VB.NET ( بخش دوم )
دهلران پی سی
سایت جامع علمی ,آموزشی,فرهنگی و تفریحی

در بخش اول اين مقاله با اسکريپت های ويژوال بيسيک و ساختارهای کنترلی در VB.NET به صورت اجمالی آشنا شديم . در بخش دوم به بررسی ساختارهای تصميم گيری ، خواهيم پرداخت .
همانگونه که قبلا" اشاره گرديد ، با استفاده از ساختارهای تصميم گيری ، يک و يا چندين شرط بررسی و بر اساس نتايج بدست آمده ، دستور و يا دستوراتی اجراء و يا از اجرای دستور و يا دستوراتی صرفنظر می گردد . در VB.NET از دو روش متفاوت  در اين رابطه استفاده می گردد : 

  • If ...Then : تعداد مسيرهائی را که می توان پس از بررسی يک عبارت شرطی انتخاب نمود ، اندک است  .

  • Select Case :تعداد مسيرهائی را که می توان پس از بررسی يک عبارت شرطی انتخاب نمود ، زياد است  . 

مثلا" در صورتی که در يک برنامه قصد طرح اين پرسش از کاربران را  داريم که :  " آيا می خواهيد قرار ملاقات خود را از طريق تلفن ، نهائی نمائيد ؟"قطعا" پاسخ به سوال فوق دو گزينه بيشتر نخواهد داشت (  پاسخ مثبت ( True ) و منفی ( False ) ) . بنابراين می توان در چنين مواردی از ساختار If...Then استفاده نمود . ولی در صورتی که از کا ربر پرسش شود که : " آيا می خواهيد قرار ملاقات خود  را از طريق تلفن ، فاکس و يا  Email ، نهائی نمائيد ؟" ، با توجه به تعداد گزينه های موجود ، ترجيح داده می شود که از ساختار Select Case استفاده شود .
قبل از پرداختن با جزئيات نحوه استفاده از ساختارهای فوق ، لازم است با برخی عملگرها که از آنان به منظور ايجاد عبارات شرطی استفاده می شود،بيشتر آشنا شويم .

عملگرهای مقايسه ای
عملگرهای مقايسه ای در VV.NET عبارتند از :

کاربرد

عملگر

 مساوی

 =

 کوچکتر از

>

کوچکتر يا مساوی 

=>

 نامساوی

<>

 بزرگتر

<

 بزرگتر يا مساوی

 =>

عملگرهای منطقی
در VB.NET از عملگرهای منطقی متعددی استفاده می شود. جدول زير برخی از متداولترين آنان را نشان می دهد :

مثال

کاربرد

عملگر

  If  A=1 AND B=2 Then 

 در صورت درست بودن تمامی عملوندها ، شرط مورد نظر ارزش درست را پيدا خواهد کرد . 

 AND

If  A=1 OR  B=2 Then

 درصورت درست بودن يکی از عملوندها ، شرط مورد نظر ارزش درست را پيدا خواهد کرد

OR

If  NOT A=1 Then

مقدار مخالف شرط را بر می گرداند . در صورتی که شرط مورد نظر ارزش درست را داشته باشد ، NOT آن مقدار نادرست را برمی گرداند . 

NOT

اولويت عملگرهای فوق به ترتيب OR,AND,NOT می باشد .

ساختار If...Then  

ساختار فوق دارای چهار بخش اساسی است :

  • يک عبارت که شامل يک و يا چندين شرط است که ماحصل آن True و يا False خواهد بود .

  • کد لازم  در صورتی که نتيجه عبارت شرطی ، درست باشد .

  • کد لازم در صورتی که نتيجه عبارت شرطی نادرست باشد ( اختياری )

  • يک عبارت که نشاندهنده پايان ساختار است .

برای ايجاد ساختار If...Then ازروش های متفاوتی استفاده می گردد . برای انتخاب گرامر مناسب می بايست به دو سوال فوق پاسخ داده شود  :

  • در مواردی که  نتيجه عبارت شرطی  False  گردد ، قصد انجام کار( و يا کارهای )  خاصی را داريد ؟ 

  • در صورتی که نتيجه عبارت شرطی درست باشد ، قصد اجرای بيش از يک دستور را داريد ؟

If..Then : ساده ترين روش استفاده ازساختار تصميم گيری است . در صورت استفاده از ساختار فوق و در مواردی که نتيجه عبارت شرطی نادرست ( False ) باشد ، نمی توان دستور ويا دستوراتی را اجراء نمود .

 If  A=1 Then TestMessage.Text = " نتيجه عبارت شرطی ، درست است "

در صورتی که قصد داشته باشيم پس از بررسی  عبارت شرطی و درست بودن آن بيش از يک دستور را اجراء نمائيم ، می بايست پس از درج دستورات مورد نظر ، از يک End If در قسمت پايانی دستورات ،  استفاده نمائيم .

If  A=1 Then
      TestMessage.Text = " در صورت درست بودن شرط ، دو دستور اجراء می گردد "
       B = 2
End If

If...Then...Else : از ساختار فوق در مواردی که قصد داشته باشيم پس ازبررسی عبارت شرطی و با توجه به نتيجه آن ( درست و يا نادرست ) دستورات خاصی را اجراء نمائيم ، استفاده می شود . 

If  A=1 Then
      TestMessage.Text = " در صورت درست بودن شرط ، اجراء می گردد"
Else
      TestMessage.Text = "
در صورت نادرست بودن شرط ، اجراء می گردد
End If

If...Then ...ElseIf  : با اين که استفاده از ساختار فوق به منظور تصميم گيری بندرت انجام می شود ، ولی در موارد خاصی لازم است که از اين ساختار استفاده شود. با استفاده از ساختار فوق می توان عبارات شرطی متفاوتی را با يکديگر ترکيب و بر اساس نتايج بدست آمده ، دستور و يا دستورات خاصی را با توجه به وضعيت بوجود آمده ، اجراء نمود .  بدين منظور لازم است که هر يک از حالات موجود را با استفاده از ElseIf  از يکديگر جدا نموده و در نهايت تمامی ساختار را با استفاده از End If  به پايان رساند .

If  A=1 Then
      TestMessage.Text = " A=1" 
ElseIf  A=2 Then
      TestMessage.Text = " A=2 " 
ElseIf  A=3 Then
      TestMessage.Text = " A=3 " 
End If

مثال : نحوه استفاده از ساختار If...Then
در اين مثال کامپيوتر عددی را به صورت تصادفی توليد نموده و از شما درخواست می شود که اين عدد را تشخيص دهيد  .

مرحله اول : تايپ کد زير با استفاده از يک ويرايشگر

 




چه عددی را بخاطر سپرده ام ؟
 
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10



 
  

 مرحله دوم :  پس از ذخيره کد فوق در فايلی با نام ifthen.aspx و مشاهده آن در مرورگر ، خروجی زير را خواهيم داشت :

مرحله سوم : انتخاب عدد مورد نظر و کليک بر روی دکمه "تشخيص عدد "

توضيحات :

  • با استفاده از کنترل > که اعداد يک تا ده را نمايش می دهد از کاربر خواسته ايم که عددی را انتخاب نمايد .

  • در کد نوشته شده دو متغير به اسامی theNumber و theGuess تعريف که از آنان به منظور ذخيره عدد توليد شده تصادفی  و عدد حدس زده شده توسط کاربر استفاده می گردد .

  • برای توليد اعداد تصادفی از تابع ()rnd استفاده شده است. تابع فوق ، يک عدد اعشاری بين صفر و يک را توليد می نمايد . برای داشتن يک عدد تصادفی بين يک تا ده ، می بايست عدد توليد شده  را در ده ضرب نمود . بدين ترتيب يک عدد بين صفر تا ده توليد می شود .

  • با استفاده از ساختار If...Then بررسی لازم در خصوص عدد انتخاب شده توسط کاربر و مقايسه آن با  عدد تصادفی توليد شده انجام و بر اساس آن پيام مناسبی  به کاربر ارائه خواهد شد .

ساختار Select Cast
يکی از چالش های استفاده از ساختار If...Then در مواردی است که قصد داشته باشيم  تعداد سه و يا بيش از سه وضعيت را بکمک آن مقايسه نمائيم . مثلا" در صورتی که بخواهيم يک کاربر را بر اساس انتخاب انجام شده به شش صفحه وب مجزاء هدايت نمائيم ، استفاده از ساختار If...then علاوه بر اين که کد برنامه را ناخوانا خواهد کرد ، سرعت اجرای کد نوشته شده نيز کندتر می گردد. در چنين مواردی می توان از ساختار Select Case استفاده نمود .

مثال : نحوه استفاده از ساختار Select Case

مرحله اول : تايپ کد زير با استفاده از يک ويرايشگر






 


    کدام شهرستان را برای مسافرت انتخاب می نمائيد ؟


   
      تهران
      اهواز
      شيراز
  


  


  <asp:label id="message" runat="server"/>


 مرحله دوم :  پس از ذخيره کد فوق در فايلی با نام selectcase.aspx و مشاهده آن در مرورگر ، خروجی زير را خواهيم داشت :

مرحله سوم : انتخاب گزينه  مورد نظر و کليک بر روی دکمه " ارسال درخواست "

توضيحات :

  • با استفاده از کنترل <asp:radiobuttonlist> ، مجموعه ای از گزينه ها ارائه شده است .

  • با استفاده از ساختار Select Case بررسی لازم در خصوص گزينه انتخاب شده توسط کاربر انجام و متناسب با آن پيام خاصی در کنترل lablel نمايش داده می شود .

  • در صورتی که به هر دليلی يکی از گزينه های ارائه شده،  انتخاب نشود و يا خطای خاصی اتفاق افتاده باشد که داده انتخابی با هيچيک از موارد ذکر شده در ساختار Select Case مطابقت ننمايد ، بخش Case else ساختار Select Case انتخاب و دستورات موجود در اين بخش اجراء خواهند شد .

در بخش سوم اين مقاله به بررسی ساختارهای تکرار خواهيم پرداخت .


نظرات شما عزیزان:

نام :
آدرس ایمیل:
وب سایت/بلاگ :
متن پیام:
:) :( ;) :D
;)) :X :? :P
:* =(( :O };-
:B /:) =DD :S
-) :-(( :-| :-))
نظر خصوصی

 کد را وارد نمایید:

 

 

 

عکس شما

آپلود عکس دلخواه:








ارسال توسط هادی احمدی

آرشیو مطالب
پيوند هاي روزانه
امکانات جانبی

آمار وب سایت:  

بازدید امروز : 68
بازدید دیروز : 88
بازدید هفته : 336
بازدید ماه : 648
بازدید کل : 162591
تعداد مطالب : 736
تعداد نظرات : 23
تعداد آنلاین : 1

Google

در اين وبلاگ
در كل اينترنت
 <-PostTitle-> <-PostContent-> 1 <-PostLink->